The NOV Graphics module provides the essential objects need to perform different geometry, imaging, text and styling operations related to graphics.
The NOV Graphics module features implementation of essential graphics algorithms that aims to ensure that rasterization of DOM content can fall-back to managed implementation in environments where a specific graphics algorithm that is usually implemented in unmanaged code does not exist or does not conform to NOV standards. Certain graphics algorithms are always performed by NOV, to ensure the consistency of the graphics output under all environments.
The NOV Graphics objects can be generally divided into the following categories:
Styles
Styles are used to change the filling, stroking and shadow of rendered geometries. Styles can be applied to an instances of the NPaintVisitor class (see the Painting topic) to alter the appearance of subsequently rendered geometries and/or text. Styles are generally implemented as DOM attributes, since you typically expose styles as properties of DOM elements (see Documents for more info).
The following topics discuss the basic styles: Fill, Stroke, Shadow and Font.
Geometries
NOV geometries are implemented with double precision. The NOV geometry objects fall into the following general categories:
Basic
These are fundamental structures related to graphics, such as NPoint, NSize and NMargins (double precision).
The NPointI, NSizeI and NMarginsI structures feature similar operations, but are implemented with integers.Transformations
NOV graphics are using the NMatrix structure to represent an affine transformation in 2D space. The NMatrix structure represents a 3x2 matrix and implements the general matrix operations with double precision.
Primitive Geometries
These are basic primitive geometries that represent closed and open figures and curves such as rectangles, ellipses, ellipse segments, line segments etc.
See Primitive Geometries for more info.MultiPoint Geometries
These are graphics paths, polygons and polylines.
See Multipoint Geometries for more info.Regions
Regions are used to represent closed areas in 2D space.
Regions implement proprietary Constructure Solid Geometry (CSG) algorithms that allows you to perform Set-Operations (union, intersection, subtraction, exclusive-or) with arbitrary geometries.
See Regions for more info.
Imaging
NOV implements core support for essential imaging algorithms, such as decoding and encoding of popular image formats (.PNG, .JPEG, .BMP, .GIF), raster manipulation etc.
See Images for more info.
All examples related to the NOV Graphics assume that you are using the Nevron.Nov.Graphics namespace and that you have referenced the Nevron.Nov.Presentation.XXX.dll for the specific runtime that you target.